open-wa is at the forefront of open source WA developmentand runs on donations from backers. To encourage donations, backers have access to exclusive features with an Insiders Program license key.
Function | Description |
---|---|
setGroupToAdminsOnly | Changes group setting so only admins can send messages |
setGroupEditToAdminsOnly | Changes group setting so only admins can edit group info |
setGroupTitle | Changes the group title |
setGroupDescription | Changes the group description |
setProfilePic | Change the host phones profile picture |
[[onRemovedFromGroup]] | Detect when host phone is removed from a group |
[[onContactAdded]] | Detect when host phone adds a new contact |
getCommonGroups | Retreive all common groups between the host device and a conttact |
clearAllChats | Easily clear memory by clearing all chats of all messages on the host device and WA Web |
sendReplyWithMentions | Send a reply to a message with mentions |
[[onChatOpened]] | Detect when a chat is selected in the UI |
[[onChatState]] | Detect when someone is typing or recording a voicenote |
getStickerDecryptable | Convert a normal sticker message (results in blank image) to one that is able to grab and decrypt the actual sticker |
forceStaleMediaUpdate | If a media message is old, the file url will result in a 404 error. forceStaleMediaUpdate forces the mobile app to reupload the file. |
tagEveryone | Send a group message with everyone tagged. |
The ability to send messages to non-contact numbers is restricted in this library to prevent spam.
There are 3 ways to start a chat with a new number:
You can send a special link to the person you want to start a chat with. This will open a conversation with your number on their phone. This way you can insure that they have explicitly started a conversation with you.
You can add this button to your website which, when clicked, will open a chat with you in the same way as above.
In order to unlock the functionality to send texts to unknown numbers through @open-wa/wa-automate itself, you will need a Restricted License key.
One License Key is valid for one number. Each License Key for this is £10 per month. Instructions below.
After a lot of effort, ability to send text, image and video stories is available exclusively in this library.
Go to Gumroad.
Click on the type of license you require.
In the checkout, enter the host account number you want to assign to the License Key (the one you will be using with open-wa, not your personal number) , along with the use case for this functionality and your github username. Please note, with this new system you'll only be able to change the number once.
Complete the checkout process.
You will instantly receive your License key on the screen and in your email.
Add licenseKey to your config:
...
create({
licenseKey: "..."
})
//or for multiple license keys to stack features.
create({
licenseKey: ["...","..."]
})
...
This depends on how you're using the library. If you're using it with your own custom code then you can enter the licenseKey like so within the config of your create
command:
create({
licenseKey: "FE764A87-BB9B48EE-BBBC035C-9736F87"
})
If you're using the CLI then you can add it as a CLI flag:
> npx @open-wa/wa-automate --license-key
Name | link | Description |
---|---|---|
Insiders | LINK | All Insiders Features |
Restricted | LINK | Send messages to non-contacts |
Text Story | LINK | Send Text Stories |
Image Story | LINK | Send Image Stories |
Video Story | LINK | Send Video Stories |
Premium | LINK | All the above + Send Custom Products |
All keys include access to all insider's features. You do not need a Premium Key to send messages to non-contacts.
If the license key is showing up as invalid, there may be an issue with your host account number you entered in the checkout form. In some countries, the host account number is different from the actual number (for example in Brazil, an extra 9 is added). If you're unsure about your host account number then use the following code:
const hostAccountNumber = await client.getHostNumber();
console.log('Host account', hostAccountNumber);
If it's different from what you've entered in the checkout form, please fill and send this email.
If you are having issues where your license key shows as valid in the console, but the features continually return false
this may be due to a NodeJS issue relating to the time on your machine. To fix this, make sure your machine's time is correct.
If your development and production host accounts are different, then you can enter the development host account number in the form and when you're ready to your production host account, fill and send this email.